<?php

/**
 * \file
 * Classe `int`.
 */

namespace pilar\Entities\Fields /* \cond */ ; /* \endcond */
{

/**
 * Champ numérique entier en base de données.
 *
 * \since 09/09/2008
 * \author Matthieu OVIEDO <matthieu.oviedo@gmail.com>
 */
class Int extends Field {

protected function loadDefaultParams() {
 parent::loadDefaultParams();

 $this->params->define(array(
  'unsigned' => false,          // Vrai si l'entier est non signé.
  'size' => '',                 // small, tiny, big...
  'autoIncrement' => false      // Active l'auto-incrémentation.
 ));
}


public function sqlProperties() {
 $code  = \upcase($this->get('size')).'INT ';
 if($this->get('unsigned'))      $code .= 'UNSIGNED ';
 if($this->get('autoIncrement')) $code .= 'AUTO_INCREMENT ';
 $code .= 'NOT NULL';

 return $code;
}


/*public function isEmpty($value) {
	if ($value == '') {
		return true;
	}
	return false;
}*/


} // Class.

} // Namespace.

?>
